43 research outputs found
Network Time Synchronization: A Full Hardware Approach
Complex digital systems are typically built on top of several
abstraction levels: digital, RTL, computer, operating system and
software application. Each abstraction level greatly facilitates the design
task at the cost of paying in performance and hardware resources usage.
Network time synchronization is a good example of a complex system
using several abstraction levels since the traditional solutions are a software
application running on top of several software and hardware layers.
In this contribution we study the case where a standards-compliant network
time synchronization solution is fully implemented in hardware on
a FPGA chip doing without any software layer. This solution makes it
possible to implement very compact, inexpensive and accurate synchronization
systems to be used either stand-alone or as embedded cores.
Some general aspects of the design experience are commented together
with some figures of merit. As a conclusion, full hardware implementations
of complex digital systems should be seen as a feasible design
option, from which great performance advantages can be expected, provided
that we can find a suitable set of tools and control the design
development costs
Fast Hardware Implementations of Static P Systems
In this article we present a simulator of non-deterministic static P systems
using Field Programmable Gate Array (FPGA) technology. Its major feature
is a high performance, achieving a constant processing time for each transition. Our
approach is based on representing all possible applications as words of some regular
context-free language. Then, using formal power series it is possible to obtain the
number of possibilities and select one of them following a uniform distribution, in
a fair and non-deterministic way. According to these ideas, we yield an implementation
whose results show an important speed-up, with a strong independence from
the size of the P system.Ministry of Science and Innovation of the Spanish Government under the project TEC2011-27936 (HIPERSYS)European Regional Development Fund (ERDF)Ministry of Education of Spain (FPU grant AP2009-3625)ANR project SynBioTI
NanoFS: a hardware-oriented file system
NanoFS is a novel file system for embedded systems and storage-class memories
(like flash) and is specially designed to be directly implemented in hardware. NanoFS is based on an original internal layout intended to achieve an optimal
hardware implementation of the file system’s file lookup and data fetch operations. File system spe-cification on a sample reader module completely implemented in a pro-grammable device is introduced
Minimalistic SDHC-SPI hardware reader module for boot loader applications
This paper introduces a low-footprint full hardware boot loading solution for FPGA-based Programmable
Systems on Chip. The proposed module allows loading the system code and data from a standard SD card
without having to re-program the whole embedded system. The hardware boot loader is processor independent
and removes the need of a software boot loader and the related memory resources. The hardware overhead
introduced is manageable, even in low-range FPGA chips, and negligible in mid- and high-range devices. The
implementation of the SD card reader module is explained in detail and an example of a multi-boot loader is
offered as well. The multi-boot loader is implemented and tested with the Xilinx's Picoblaze microcontroller
Automated performance evaluation of skew-tolerant clocking schemes
In this paper the authors evaluate the timing and power performance of three skew-tolerant clocking schemes. These schemes are the well known master–slave clocking scheme (MS) and two schemes developed by the authors: Parallel alternating latches clocking scheme (PALACS) and four-phase parallel alternating latches clocking scheme (four-phase PALACS). In order to evaluate the timing performance, the authors introduce algorithms to obtain the clock waveforms required by a synchronous sequential circuit. Separated algorithms were developed for every clocking scheme. From these waveforms it is possible to get parameters such as the non-overlapping time and the clock period. They have been implemented in a tool and have been used to compare the timing performance of the clocking schemes applied to a simple circuit. To analyse the power consumption the authors have electrically simulated a simple circuit for several operation frequencies. The most remarkable conclusion is that it is possible to save about 50% of the power consumption of the clock distribution network by using PALACS.Ministerio de Ciencia y Tecnología TEC 2004-00840/MI
Fast-Convergence Microsecond-Accurate Clock Discipline Algorithm for Hardware Implementation
Discrete microprocessor-based equipment is a typical synchronization
system on the market which implements the most critical
features of the synchronization protocols in hardware and the synchronization
algorithms in software. In this paper, a new clock discipline
algorithm for hardware implementation is presented, allowing for full
hardware implementation of synchronization systems. Measurements on
field-programmable gate array prototypes show a fast convergence time
(below 10 s) and a high accuracy (1 μs) for typical configuration
parameters.Ministerio de Educación y Cultura HIPER TEC2007-61802/MI
Implementación de un procesador académico simple así como de un entorno de programación y depuración para el mismo
En este trabajo se desarrolla un procesador académico
para su uso en la asignatura Estructura de Computadores de
primer curso de las nuevas titulaciones de Grado en Ingeniería
Informática. En las prácticas de la asignatura se aplicarán los
conceptos de sistemas digitales que ya poseen los alumnos al
diseño e implementación de este procesador con el objetivo de
que interactúen con una instancia real del mismo desde distintos
puntos de vista: modificándola para aumentar su funcionalidad,
programándola para comprobar su funcionamiento y analizando
su estado interno a medida que ejecuta instrucciones. La
posibilidad de que el alumno traslade el diseño teórico a una
implementación funcional es fundamental para incrementar su
motivación en el aprendizaje.Ministerio de Ciencia e Innovación TEC2011-27936 (HIPERSYS
evercodeML: a formal language for SoC integration
Complex SoC design devote a great part of the
developing time to module integration tasks. The necessity of
automating system integration at high-level has yield to the
development of module description languages like IP-XACT.
However, the available options today still lack advanced
parametrization capabilities needed to design complex systems
with very heterogeneous IP-cores and module providers. This
contribution introduces a formal language for SoC integration
that overcomes these limitations.Ministerio de Ciencia e Innovación TEC2011-27936 (HIPERSYS
Building a basic membrane computer
In this work, we present the building of two well-known membrane com-
puters (squares generator and divisor test). Although they are very basic machines they
present problems common to every P system (competition, parallel execution of rules,
membrane dissolution, etc.) that have to be solved in order to get real emulations for
them. The presented designs mimic the systems operation in a realistic way, by achieving
both maximum parallelism and non-determinism, and demonstrating for the rst time
that a membrane computer can actually be built in silico. Our architectures fully emu-
late the membranes behaviour yielding to a performance of one transition per clock cycle,
supposing a real physical realization of the mentioned machines
Digital Data Processing Peripheral Design for an Embedded Application based on the Microblaze Soft Core
In this paper we present a design of a peripheral for
MicroBlaze soft core processor as part of a R+D project
carried out in cooperation with three different companies.
The objective of the project consisted in the development of
an embedded system with a SoC implemented on a FPGA
custom-designed board. This work addresses the design of a
Digital Data Processing peripheral included as a part of the
target SoC application, that process digital signals via the
digital inputs on a proposed board. Peripheral functionality
is configurable for each digital signal independently and is
configured from the software running on the MicroBlaze
processor core.Ministerio de Educación y Cultura TEC2007-61802/MICJunta de Andalucía EXC-2005-TIC-102